// 页面加载完成执行里面的代码
// 页面加载完成需要在Java后台查询所有产品的数据
$(function () {
    layui.use(["table", 'form', 'layer', 'laydate'], function () {
        // 得到需要的内置组件
        let layer = layui.layer; //弹层
        // let laypage = layui.laypage; //分页
        let laydate = layui.laydate; //日期
        let table = layui.table; //表格
        let form = layui.form;
        laydate.render({
            elem: '#startCreateTime',
            trigger: 'click'
        });
        laydate.render({
            elem: '#endCreateTime',
            trigger: 'click'
        });
        let cuisineRes = myAjax("/back/cuisine/findAll", {isShow: 1}, 'get');
        //调用赋值菜系的方法
        setCuisineData(cuisineRes.data);

        //给菜系的下拉菜单赋值
        function setCuisineData(data) {
            console.log(data);
            let html = '<option value="">请选择菜系</option>';
            // let data = cuisineRes.data;
            for (let i = 0; i < data.length; i++) {
                html += '<option value="' + data[i].id + '">' + data[i].name + '</option>';
            }
            $("#cuisine").html(html);
            form.render();//刷新表单：一般用于赋值时没有数据更新
        }


        // let dropdown = layui.dropdown; //下拉菜单
        // 执行一个 table 实例
        tableRender({});
        //锁定操作
        form.on('checkbox(enable)', function (obj) {
            // console.log(11);
            // layer.msg(this.value);
            // layer.tips(this.value + ' ' + this.name + '：'+ obj.elem.checked, obj.othis);
            $.ajax({
                url: '/back/product/enable',
                data: {id: this.value},
                type: 'post',
                dataType: 'json',
                success: function (res) {
                    if (res.count > 0) {
                        layer.msg("修改成功");
                    } else {
                        layer.msg("修改失败");
                    }
                }
            })
        });
        // 单元格工具事件
        table.on('tool(test)', function (obj) { //注：tool 是工具条事件名，test 是 table 原始容器的属性 lay-filter="对应的值"
            let data = obj.data //获得当前行数据
                , layEvent = obj.event; //获得 lay-event 对应的值
            if (layEvent === 'detail') {
                // layer.msg('查看操作');
                //弹出一个预览页面
                sessionStorage.setItem("productId", data.id);
                xadmin.open('预览产品', '/html/product/product-detail.html', 600, 400)
            } else if (layEvent === 'update') {
                sessionStorage.setItem("productId", data.id);
                xadmin.open('编辑产品', '/html/product/product-update.html', 600, 400)
                // layer.msg('修改操作');
            } else if (layEvent === 'del') {
                // console.log(data.id);
                layer.confirm('真的要删除当前id为' + data.id + '吗？', function (index) {
                    let res = myAjax('/back/product/delete', {id: data.id}, 'post');
                    if (res.count > 0) {
                        layer.msg("删除成功");
                        obj.del();
                        layer.close(index);
                    } else {
                        layer.msg("删除失败");
                    }
                    // $.ajax({
                    //     url: "/back/product/delete",
                    //     data: {id: data.id},
                    //     type: 'post',
                    //     dataType: 'json',
                    //     success: function (res) {
                    //         if (res.count > 0) {
                    //             layer.msg("删除成功");
                    //             obj.del();
                    //             layer.close(index);
                    //         } else {
                    //             layer.msg("删除失败");
                    //         }
                    //     }
                    // })
                });

            }
        });
        form.on('submit(sreach)', function (data) {
            data = data.field;
            console.log(data);
            tableRender(data);
            return false;
        });
        form.on('submit(aa)', function (data) {
            console.log("aaa")
            return false;
        })
        form.on('submit(bb)', function (data) {
            console.log("bb")
        })

        function tableRender(data) {
            table.render({
                elem: '#table'
                , height: 420
                , url: '/back/product/findAll' //数据接口（此处为静态数据，仅作演示）
                , title: '用户表'
                , page: true //开启分页
                , where: data
                , parseData: function (res) { //res 即为原始返回的数据
                    console.log(res);
                    return {
                        "code": res.code, //解析接口状态
                        "msg": res.msg, //解析提示文本
                        "count": res.count, //解析数据长度
                        "data": res.data //解析数据列表
                    };
                }
                , cols: [[ //表头
                    {field: 'id', title: 'ID', width: 80, sort: true, fixed: 'left', totalRow: '合计：'}
                    , {field: 'name', title: '产品名称', width: 80}
                    , {field: 'normalPrice', title: '正常价', width: 90, sort: true, totalRow: '{{= d.TOTAL_NUMS }}'}
                    , {field: 'marketPriceString', title: '市场价', width: 80, sort: true}
                    , {
                        field: 'imgHref',
                        title: '产品图片',
                        width: 80,
                        sort: true,
                        totalRow: true,
                        templet: '<div><img src="{{=d.imgHref}}" width="50" height="50"/> </div>'
                    }
                    , {field: 'cuisineName', title: '菜系名称', width: 150}
                    , {field: 'enable', title: '是否启用', width: 110, templet: '#enable'}
                    , {field: 'createTime', title: '创建时间', width: 135, sort: true, totalRow: true}
                    , {fixed: 'right', title: '操作', width: 200, align: 'center', toolbar: '#barDemo'}
                ]]
            });
        }

    })
})